之前有介紹過好用的 Fluent Terminal,這次介紹微軟自己的 Windows Terminal
,多了很多好玩的功能,透過 .json
的設定,可以自由的客製化,個人覺得可玩度比 Fluent Terminal
高!
雖然現在還只是 Preview
版本,不過相信隨著更新會越來越好的,來看看官方的宣傳片
安裝的環境有些限制,目前僅有 W10 version 1903
之後的版本可以相容各項功能,不確定自己版本,可以按下 Win+R
打開執行命令,輸入 winver
就有自己的 windows 版本號了,準備就緒後,我們就開始!
我們原本的 powershell 會長這樣
我們要改造成這樣
打開 PowerShell
依序輸入兩行指令
Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser
問題全部都選
是
接著設定自動套用,在 PowerShell
上輸入 $PROFILE
,依序輸入下列兩行指令
if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
code $PROFILE
第一行是有檔案的話就開啟,沒有自動新增
第二行是以 VSCode
打開
也可以直接到以下路徑新增檔案
C:\Users\[hostname]\Documents\WindowsPowerShell\
打開後,貼上下面程式(除了前3個,其他可選用)
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Paradox
$DefaultUser = 'hostname' # your pc username,用來隱藏本機名
$ProgressPreference = 'SilentlyContinue' # 關閉 powershell 下載進度條
Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete # tab 展開路徑下檔案並選擇
如果不斷出現如下圖錯誤
請執行此命令
Set-ExecutionPolicy RemoteSigned
打開 Microsoft store
搜尋 terminal
啟動後如下
有些亂碼是正常的,因為字形還沒設定
到 powerline fonts 的 github page 下載字形包,建議直接下載 zip
接著解壓縮並打開字形包,選擇自己要的字形(我用 Source Code Pro for Powerline
他放在 SourceCodePro
資料夾),將要得 .otf
檔案拖移到字形資料夾進行安裝
最後,待一段時間,重啟 windows terminal
就完成了。
下面的設定,看個人需求進行
輸入指令
PowerShell -Command "Set-ExecutionPolicy RemoteSigned -scope Process; iwr -useb https://raw.githubusercontent.com/gerardog/gsudo/master/installgsudo.ps1 | iex"
過程中會詢問是否利用 sudo
取代 gsudo
,看個人,不影響最後使用
接著,打開 windows terminal 的 setting,在 list
陣列中,貼上如下程式碼
{
"guid": "{41dd7a51-f0e1-4420-a2ec-1a7130b7e950}",
"name": "Windows PowerShell Elevated",
"commandline": "gsudo.exe powershell.exe",
"hidden": false,
"colorScheme": "Solarized Dark",
"icon": "https://i.imgur.com/Giuj3FT.png"
},
我們希望在右鍵選單,可以快速開啟,如下圖
首先,開啟 cmd
輸入以下兩個指令 ( gitbash
無效)
echo %USERPROFILE%
echo %LOCALAPPDATA%
分別出現如下回應
輸出有如上圖,就表示 %USERPROFILE%
有正確指向你的電腦目錄
如果輸出還是
%USERPROFILE%
以下操作請自行更改為您的絕對路徑
接著,需要建立一個 Terminal
資料夾,輸入
mkdir "%USERPROFILE%\AppData\Local\Terminal"
%USERPROFILE%
沒有正確指向的可以直接到該路徑新增,此路徑在隱藏目錄中,記得打開顯示
複製路徑 %USERPROFILE%\AppData\Local\Terminal
,然後下載 icon 到剛剛的 Terminal
資料夾(在資料夾路徑搜尋直接貼上複製的路徑)
在桌面新增一個 txt
,貼上以下內容,另存為名為 addwt
的 reg
檔
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\wt]
@="Windows Terminal here"
"Icon"="%USERPROFILE%\\AppData\\Local\\Terminal\\terminal.ico"
[HKEY_CLASSES_ROOT\Directory\Background\shell\wt\command]
@="C:\\Users\\[yourhostname]\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe"
直接執行該檔案,完成後,打開 windows termianl
的 setting,加入以下命令
"startingDirectory": null
完成
如果不喜歡每次開啟 Terminal
都有 copyright 的介紹,可以在 profile.json
中,為每個 cmd
加入 -nologo
的指令,如下圖
這樣開啟時,就不會有一堆無關訊息了!
您好,想詢問
使用gsudo的方式 讓PS用系統管理員的方式啟動,而我用的是 PS7.0.3
設定檔的資訊如下 那gsudo該怎麼放進去?
ex.
{
"fontFace" : "Noto Mono for Powerline",
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"hidden": false,
"name": "PowerShell",
"source": "Windows.Terminal.PowershellCore"
}
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Paradox
$DefaultUser = 'hostname' # your pc username,用來隱藏本機名
$ProgressPreference = 'SilentlyContinue' # 關閉 powershell 下載進度條
Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete # tab 展開路徑下檔案並選擇
這邊的 set-teme 被更換為 "Set-PoshPrompt"
https://github.com/microsoft/terminal/issues/9237